//Copyright 2012 Trevin Liberty
//GNU GPL v3
//Author: Trevin Liberty

#include "Cursor.h"

Cursor::Cursor(ALLEGRO_DISPLAY* display) {
	this->display = display;

	lClicked = false;

	ALLEGRO_BITMAP* imageN = al_load_bitmap("rsc/Misc/cursor.tga");
	normCursor = al_create_mouse_cursor(imageN, 0, 0);

	imageLC = al_load_bitmap("rsc/Misc/cursor1.tga");
	leftClickCursor = al_create_mouse_cursor(imageLC, 0, 6);

	al_show_mouse_cursor(display);
	al_set_mouse_cursor(display, normCursor);
}

void Cursor::leftDown(Point<float> pos) {
	al_hide_mouse_cursor(display);
	al_set_mouse_cursor(display, leftClickCursor);
	al_show_mouse_cursor(display);
}

void Cursor::leftUp() {
	al_hide_mouse_cursor(display);
	al_set_mouse_cursor(display, normCursor);
	al_show_mouse_cursor(display);
}

void Cursor::rightDown(Point<float> pos, Point<float> camPos) {
	pos = pos + camPos;
	sprite.start(pos);
}

void Cursor::rightUp() {

}

void Cursor::update() {
	sprite.update();
}

void Cursor::draw(Point<float> camXY) {
	sprite.draw(camXY);
}